Methods and systems for selecting content for an internet television stream using mobile device location

ABSTRACT

Methods and systems for selecting content for outputting on a mobile device during a program break in an Internet television stream using mobile device location information. In one aspect, the methods and systems seamlessly select content for outputting on a mobile device during a program break in an Internet television stream using mobile device location information and program break markers. In another aspect, the methods and systems select content for outputting on a mobile device during a program break in an Internet television stream using mobile device trajectory information. In yet another aspect, the methods and systems select using mobile device location information cohabitation content for sharing a display screen on a mobile device with program content in an Internet television stream.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application is a continuation of application Ser. No. 12/386,548,filed on Apr. 20, 2009, now U.S. Pat. No. 8,356,328, which claims thebenefit of U.S. provisional Application No. 61/112,542, filed on Nov. 7,2008, both of which are incorporated herein by reference.

BACKGROUND OF INVENTION

The present invention relates to location-based services and, morespecifically, methods and systems for selecting content for outputtingon a mobile device receiving in an Internet television stream usingmobile device location information.

Many television stations deliver live or prerecorded video programmingvia the Internet. Such video programming includes video content andrelated audio content. Some Internet television streams are simulcastsof television broadcasts transmitted by conventional over-the-airterrestrial, cable or satellite television stations. Other Internettelevision streams originate from Internet-only sources.

Internet television streams are sometimes comprised of televisionprograms of specified durations. For example, an Internet televisionstream may have a half-hour news program followed by an hour talk showprogram followed by a half-hour drama or comedy program. Each of thesevideo programs will normally include program breaks during which contentthat is distinct from the program content is delivered. For example, aprogram may be interrupted by program breaks during whichadvertisements, station identification messages or other content areoutputted.

The content outputted during Internet television program breaks is oftenoutputted to all viewers without regard to where they are viewing. Thiscontent may be of limited value to many viewers, advertisers andbroadcasters because it addresses topics that are not sufficiently localor otherwise relevant to these entities. Moreover, such indiscriminateoutputting limits the pool of businesses that can afford to purchaseInternet television ad spots. For example, many neighborhood businessesthat market to a local customer base cannot afford to pay for anadvertisement outputted to the entire viewership of an Internettelevision program, and also cannot afford to pay for traditionalover-the-air television advertising.

To address the foregoing concerns, it has been proposed to selectcontent for outputting on mobile devices during Internet televisionprogram breaks based on the location of the mobile devices. However,these proposals have not provided meaningful guidance on how to performreal-time content selection using mobile device location informationrequired for seamless Internet television. Moreover, these proposalshave neglected other value-added approaches, such as selecting contentbased on a mobile device's trajectory as opposed to its mere locationand exploiting cohabitation opportunities wherein location-relevantcontent can share a display screen with program content.

SUMMARY OF THE INVENTION

In one aspect, the present invention seamlessly selects content foroutputting on a mobile device during a program break in an Internettelevision stream using mobile device location information and programbreak markers. Using mobile device location information to selectprogram break content facilitates selection of program break contentthat addresses topics highly relevant to the viewer, advertiser andbroadcaster and thus often of greater value to one or more of theseentities. Using program break markers facilitates the real-time contentselection required for seamless Internet television. In another aspect,the present invention selects content for outputting on a mobile deviceduring a program break in an Internet television stream using mobiledevice trajectory information. Using mobile device trajectoryinformation to select program break content facilitates selection ofprogram break content that addresses topics relating to where a mobiledevice user is headed, which may be of even greater value to the viewer,advertiser and broadcaster. In yet another aspect, the present inventionselects using mobile device location information cohabitation contentfor sharing a display screen on a mobile device with program content inan Internet television stream. Cohabitation content may include, forexample, local store information, such as addresses, phone numbers,hours of operation or special offers. Cohabitation content may beadapted for display in, for example, a picture-in-picture, screencrawler or banner format. Such cohabitation allows location-relevantinformation to be presented to a mobile device user with minimumdisruption to programming.

In some embodiments of the invention, an Internet television sourceselects program break content using location information reported by amobile device. In some of these embodiments, an Internet televisionsource comprises a communication interface, a memory and a processorcommunicatively coupled with the communication interface and the memory,wherein the Internet television source receives via the communicationinterface location information associated with a mobile device receivingan Internet television stream and under control of the processor inresponse to detecting a marker in the Internet television streamindicating a start of a program break selects content for outputting onthe mobile device during the program break based at least in part on thelocation information.

In some of these embodiments, under control of the processor theInternet television source inserts the content into the Internettelevision stream during the program break and delivers the content tothe mobile device via the communication interface.

In some of these embodiments, under control of the processor theInternet television source selects the content based at least in part onconformance of the content with the location information and duration ofthe program break.

In some embodiments, the marker indicates the duration of the programbreak.

In some of these embodiments, under control of the processor theInternet television source selects the content based at least in part ona determination of compatibility of the content with the mobile device.

In some of these embodiments, the Internet television source undercontrol of the processor determines a trajectory of the mobile devicebased at least in part on the location information and selects contentfor outputting on the mobile device during the program break based atleast in part on the trajectory.

In some of these embodiments, the content comprises video content.

In some of these embodiments, the content comprises audio content.

In some of these embodiments, the content comprises print content.

In some of these embodiments, the location information has a degree ofaccuracy selected by a user of the mobile device.

In some of these embodiments, the location information is received fromthe mobile device in response to a request transmitted by the Internettelevision source.

In some of these embodiments, the location information is received fromthe mobile device independent of any request transmitted by the Internettelevision source.

In some of these embodiments, the location information comprises globalpositioning system (GPS) coordinates.

In some of these embodiments, the content comprises an advertisement.

In some of these embodiments, the content comprises a stationidentification message.

In some of these embodiments, the content comprises a news report.

In other of these embodiments, a method for selecting content foroutputting on a mobile device receiving an Internet television streamduring a program break in the Internet television stream comprises thesteps of receiving location information associated with the mobiledevice, detecting a marker in the Internet television stream indicatinga start of the program break and selecting content for outputting on themobile device during the program break based at least in part on thelocation information.

In other embodiments of the invention, a mobile device selects programbreak content using location information generated on the mobile device.In some of these embodiments, a mobile device comprises a locationinterface, a communication interface, a memory and a processorcommunicatively coupled with the location interface, the communicationinterface and the memory, wherein the mobile device receives via thelocation interface location information associated with the mobiledevice and receives via the communication interface an Internettelevision stream and under control of the processor in response todetecting a marker in the Internet television stream indicating a startof a program break selects content for outputting on the mobile deviceduring the program break based at least in part on the locationinformation.

In some of these embodiments, the mobile device under control of theprocessor inserts the content into the Internet television stream duringthe program break and outputs the content on the mobile device via atleast one audiovisual (A/V) output interface.

In some of these embodiments, the mobile device receives via thecommunication interface a plurality of content candidates associatedwith respective location information and selects the content from amongthe content candidates.

In some of these embodiments, the mobile device under control of theprocessor determines a trajectory of the mobile device based at least inpart on the location information and selects content for outputting onthe mobile device during the program break based at least in part on thetrajectory.

In still other embodiments of the invention, an Internet televisionsource selects program break content using trajectory informationdetermined from location information reported by a mobile device. Insome of these embodiments, an Internet television source comprises acommunication interface, a memory and a processor communicativelycoupled with the communication interface and the memory, wherein theInternet television source receives via the communication interfacelocation information associated with a mobile device receiving anInternet television stream and under control of the processor selectscontent for outputting on the mobile device during a program break inthe Internet television stream based at least in part on trajectoryinformation determined using the location information.

In some of these embodiments, the Internet television source selects thecontent based at least in part on an estimated time of arrivaldetermined using the trajectory information.

In still other embodiments of the invention, a method for selectingcontent for outputting on a mobile device receiving an Internettelevision stream during a program break in the Internet televisionstream comprises the steps of receiving location information associatedwith the mobile device and selecting content for outputting on themobile device during the program break based at least in part ontrajectory information determined using the location information.

In still other embodiments of the invention, an Internet televisionsource selects using location information reported by a mobile devicecohabitation content for cohabitating a display screen on the mobiledevice with program content in an Internet television stream. In some ofthese embodiments, an Internet television source comprises acommunication interface, a memory and a processor communicativelycoupled with the communication interface and the memory, wherein theInternet television source receives via the communication interfacelocation information associated with a mobile device receiving anInternet television stream and under control of the processor selectsbased at least in part on the location information cohabitation contentfor sharing a display screen on the mobile device with program contentin the Internet television stream.

In still other embodiments of the invention, a method for selectingcontent for outputting on a mobile device receiving an Internettelevision stream comprises the steps of receiving location informationassociated with the mobile device and selecting based at least in parton the location information cohabitation content for sharing a displayscreen on the mobile device with program content in the Internettelevision stream.

These and other aspects of the invention will be better understood byreference to the following detailed description taken in conjunctionwith the drawings that are briefly described below. Of course, theinvention is defined by the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a communication system in some embodiments of theinvention.

FIG. 2 shows a mobile device in some embodiments of the invention.

FIG. 3 shows operational elements of the mobile device of FIG. 2.

FIG. 4 shows an Internet television source in some embodiments of theinvention.

FIG. 5 shows operational elements of the Internet television source ofFIG. 4.

FIG. 6 shows method steps performed by an Internet television source tofacilitate location-based selection of content for outputting on amobile device during a program break in an Internet television stream insome embodiments of the invention.

FIG. 7 shows method steps performed on a mobile device to facilitatelocation-based selection of content for outputting on the mobile deviceduring a program break in an Internet television stream in someembodiments of the invention.

FIG. 8 shows method steps performed by an Internet television source tofacilitate trajectory-based selection of content for outputting on amobile device during a program break in an Internet television stream inother embodiments of the invention.

FIG. 9 shows method steps performed by an Internet television source tofacilitate location-based selection of content for outputting on amobile device during a cohabitation window in an Internet televisionstream in some embodiments of the invention.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT

FIG. 1 shows a communication system in which the invention is operativein some embodiments. The communication system includes mobile devices102, 104 that are communicatively coupled with Internet access devices106, 108, respectively, via wireless links. Mobile devices 102, 104 areshown to include a mobile phone 102 and a passenger vehicle 104 havingInternet television capability, although mobile devices operative withthe invention may include various other types of mobile devices that arecapable of determining their location and outputting an Internettelevision stream, such as portable computers and various classes ofwireless handsets such as personal data assistants (PDAs) and mobileInternet appliances. Internet access devices 106, 108 are installed atdifferent geographic locations and may be any of various types ofdevices capable of supporting mobile wireless Internet access, such asWiMAX, EDGE or 3G base stations or Wi-Fi access points, to name a few.Internet access devices 106, 108 are communicatively coupled with anInternet television source 120 over a communication network 130, whichmay have any number of nodes, such as routers, switches, and bridges,via a wired or wireless connection. Internet television source 120delivers to mobile devices 102, 104 an Internet television stream thatmay be a simulcast of an over-the-air terrestrial, cable or satellitetelevision broadcast or an Internet-only television stream. Thecommunication system also includes a constellation of GPS satellites 100transmitting GPS signals that mobile devices 102, 104 receive andinterpret to resolve their respective locations.

In other embodiments, a mobile device may acquire its location from asource other than GPS, such as a different satellite navigation systemor a terrestrial source. Location acquisition from a terrestrial sourcemay be accomplished through, for example, base station triangulation,manual input of a location by a mobile device user or advertisement of astatic location by an Internet access device to which the mobile deviceis linked wirelessly.

Turning to FIG. 2, a mobile device 200, which is representative ofmobile devices 102, 104, is shown in some embodiments to include alocation interface 210, a wireless communication interface 220, a memory240, an A/V output interface 250 and a printer 260, all of which arecommunicatively coupled with a processor 230. Location interface 210receives GPS signals from GPS satellites 100 and passes GPS signals toprocessor 230. Wireless communication interface 220 providesconnectivity between mobile device 200 and an Internet access device(e.g. 106, 108) via a wireless link, such as a WiMAX, EDGE, 3G or Wi-Filink. A/V output interface 250 includes a display screen, such as alight emitting diode (LED), liquid crystal display (LCD) or plasmascreen, and speakers or other devices that produce A/V output foroutputting A/V content in an Internet television stream to a user ofmobile device 200. Printer 260 is a printing mechanism for outputting toa mobile device user print content that may be related to A/V content inan Internet television stream. Processor 230 executes in softwareoperations supported by mobile device 200, including management ofwireless links and Internet television streaming sessions via wirelesscommunication interface 220; generating and transmitting to Internettelevision source 120 via wireless communication interface 220 locationreports having GPS coordinates resolved from GPS signals and anidentifier associated with mobile device 200, such as an IP address,media access control (MAC) address or session identifier; outputting A/Vcontent in an Internet television stream via A/V output interface 250;and outputting print content that may be related to A/V content in anInternet television stream via printer 260. Memory 240 stores softwareexecutable by processor 230, an identifier of mobile device 200 andresolved GPS coordinates. Memory 240 may include one or more randomaccess memory (RAM) and/or one or more read only memory (ROM) elements.

FIG. 3 shows operational elements of mobile device 200 stored in memory240 to include a communication client 310, a location resolver 320, anA/V output controller 330, a print controller 340, a device ID store 350and a location data store 360. Communication client 310, locationresolver 320, A/V output controller 330 and print controller 340 aresoftware programs executable by processor 230. Device ID store 350 andlocation data store 360 are data storage elements.

Communication client 310 generates and transmits location reports toInternet television source 120 via wireless communication interface 220.Location reports may be generated and transmitted in response tolocation requests received from Internet television source 120 viawireless communication interface 220, or independent of any request fromInternet television source 120. Location reports may be transmitted inresponse to an event, such as receipt of a location report or resolutionof a new location, or may be transmitted periodically. Location reportsinclude information retrieved from device ID store 350 sufficient toidentify mobile device 200, such as an IP address, and locationinformation retrieved from location data store 360, such as GPScoordinates including at least a latitude and longitude. Locationinformation may be time-stamped with its time of acquisition. A locationreport may include only the most recently resolved instance of GPScoordinates, or may include the last N resolved instances GPScoordinates, wherein N is a greater than one. In the event valid GPScoordinates are unavailable at the time of reporting, suchunavailability may be indicated in a location report by, for example,setting an invalid location flag or transmitting an invalid locationsymbol that will be recognized by Internet television source 120.Moreover, to protect privacy, communication client 310 may provide auser with the ability to enable (opt-in) or disable (opt-out) provisionof location information to Internet television source 120, and mayprovide the user with the ability to select the degree of accuracy oflocation information provided to Internet television source 120. Forexample, a user may prescribe that GPS coordinates included in alocation report be accurate to within one kilometer.

Communication client 310 also translates A/V content in an Internettelevision stream received from Internet radio source 120 via wirelesscommunication interface 220 into video and sound for outputting on A/Voutput interface 250 under control of A/V output controller 330.Communication client 310 additionally translates any print contentrelated to such A/V content into printer-ready data for outputting onprinter 260 under control of print controller 340.

Location resolver 320 translates GPS signals received from locationinterface 210 into GPS coordinates having at least a latitude andlongitude. Location resolver 320 stores the GPS coordinates in locationdata store 360, and may time-stamp the GPS coordinates with theacquisition time of the GPS coordinates. The time used to time-stamp GPScoordinates may be obtained from GPS satellites 100 or an internalclock, for example. In non-GPS embodiments, location resolver 320 maytranslate (if necessary), time-stamp and store location informationreceived from an alternative satellite navigation system or terrestrialsource.

Turning to FIG. 4, Internet television source 120 is shown in someembodiments of the invention to include an A/V input interface 410, acommunication interface 420 and a memory 440, all of which arecommunicatively coupled with a processor 430. A/V input interface 410receives video and sound generated as part of an Internet televisionprogram, or receives video and sound from an over-the-air terrestrial,cable or satellite television program, and passes the video and sound toprocessor 430. Communication interface 420 provides connectivity betweenInternet television source 120 and communication network 130 via a wiredor wireless high bandwidth connection over which an Internet televisionstream is delivered to mobile device 200. Processor 430 executes insoftware operations supported by Internet television source 120,including management of wired connections and Internet televisionstreaming sessions via communication interface 420, processing locationreports received from mobile device 200 via communication interface 420,translating video and sound received via A/V input interface 410 as partof an Internet television program into a streaming format, insertingselected content during program breaks in an Internet television streamusing GPS coordinates received in location reports, and delivering anInternet television stream having selected program break content tomobile device 200 via communication interface 420. Memory 440 storessoftware executable by processor 430, information from location reportsreceived from mobile device 200 and program break content selectable forinsertion into an Internet television stream. Memory 440 may have RAMand/or ROM elements.

FIG. 5 shows operational elements of Internet television source 120stored in memory 440 to include a communication server 510, an Internettelevision stream encoder/marker 520, a content insertion manager 530, areported location database 540 and a program break content database 550.Communication server 510, Internet television stream encoder/marker 520and content insertion manager 530 are software programs executable byprocessor 430. Reported location database 540 and program break contentdatabase 550 are data storage elements. Internet television source 120and elements shown within memory 440 may be implemented on a single nodeor may be distributed across multiple nodes, which may be in closeproximity or remote from one another. In one distributed architectureexample, software elements 510, 520, 530 may be collocated withprocessor 430 on a first node while databases 540, 550 may be located onone or more other nodes to which the first node has network access. Inanother distributed architecture example, software elements 510, 520,530 may be distributed across multiple nodes and executed by differentprocessors.

Communication server 510 processes location reports received from mobiledevice 200 via communication interface 420. Communication server 510 mayissue location requests via communication interface 420 in response towhich location reports are received, or location reports may be receivedindependent of any request issued by Internet television source 120.Where employed, location requests may be transmitted in response toevents or periodically. Communication server 510 extracts the locationinformation, such as GPS coordinates, and the associated device ID, suchas an IP address, from location reports and stores the associatedinformation in reported location database 540. Any time stampaccompanying the location information may also be stored as part of theassociated information. Communication server 510 also delivers to mobiledevice 200 via communication interface 420 an Internet television streamhaving selected content retrieved from program break content database550 inserted therein.

Internet television stream encoder/marker 520 encodes and compressesvideo and sound received in an Internet television program via A/V inputinterface 410 to convert the video and sound into an Internet televisionstream for delivery over the Internet. In some embodiments, the Internettelevision stream is an IP television (IPTV) stream. Encoder/marker 520also inserts markers into the Internet television stream identifyingstarting points of program breaks in the Internet television programduring which program break content may be inserted into the Internettelevision stream. Markers are electronically detectable by contentinsertion manager 530 to trigger content selection for insertion duringprogram breaks. A marker may explicitly indicate the duration of aprogram break. Alternatively, content insertion manager 530 maydetermine the duration of a program break by reference to a programscript provided in advance of the Internet television program. Forexample, an advance program script may inform content insertion manager530 that a marker detected about ten minutes after the start of anInternet television program will precede a program break of one minuteduration. In still other embodiments, content insertion manager 530 maydiscover the duration of a program break by detecting an end marker thatsignals the end of the program break.

Content insertion manager 530 applies information stored in reportedlocation database 540 to select suitable video and audio and any relatedprint content from program break content database 550 for insertion inan Internet television stream during program breaks, and insertsselected content into the Internet television stream. Program breakcontent stored in database 550 comprises A/V content, such asadvertisements, station identification messages and news reports, thatis distinct from the program content, and any related print content. Inother embodiments, program break content may consist only of A/V contentor only print content. News reports may include, for example, traffic,weather, stock market, politics and sports reports. Related printcontent may include, for example, a printable coupon for a businessentity (e.g. restaurant) that is sponsoring an advertisement. Programbreak content is stored in association with a location range andindication of program break duration for which such content is suitablefor insertion.

FIG. 6 shows method steps performed by Internet television source 120,under control of processor 430, to facilitate location-based selectionof content for outputting on mobile device 200 during a program break inan Internet television stream in some embodiments of the invention. Itshould be noted at the outset that while the method describes selectionof program break content for a single mobile device 200, in practicethere may be many mobile devices receiving the same Internet televisionstream for which Internet television source 120 simultaneously (ornearly simultaneously) selects program break content.

In the method, Internet television source 120 transmits to mobile device200 an Internet television stream and a location request (605). Thelocation request may be embedded with the Internet television stream. Inother embodiments, no location request is transmitted.

Next, Internet radio source 120 receives a location report from mobiledevice 200 (610). The location report has one or more instances oflocation information and an identifier associated with mobile device200. The location information may be, for example, GPS coordinatesincluding a latitude and longitude. The identifier of mobile device 200may be, for example, an IP address, MAC address or session identifier.The location information may be time-stamped with a time that thelocation information was acquired by mobile device 200. The locationinformation may be accurate to within GPS tolerances or within a lesserdegree of accuracy prescribed by the user. Internet television source120 under control of processor 430 stores information from the locationreports in reported location database 540.

Next, Internet television source 120 under control of processor 430identifies a program break in the Internet television stream (615). Inthis regard, Internet television source 120 detects a marker in theInternet television stream that indicates a program break start andduration. In other embodiments, Internet television source 120 maydetermine the duration of the program break from a program script. Inother embodiments, Internet television source 120 may discover theduration of the program break from an end marker. Naturally, if nomarker is found, the content selection process is aborted (620).

If a program break is found, Internet television source 120 undercontrol of processor 430 next identifies any content in program breakcontent database 550 that matches the most recent reported location ofmobile device 200 in location database 540 (625). In this regard,Internet television source 120 may compare for a match the most recentGPS coordinates of mobile device 200 with location ranges associatedwith various instances of program break content stored in database 550.If no instance of location-matching program break content is found, thecontent selection process is aborted (620). In that event, Internettelevision source 120 may deliver during the program break predetermineddefault content.

It bears noting that Internet television source 120 may inhibit thecontent selection process if the last reported location of mobile device200 is not sufficiently current. To make this determination, Internettelevision source 120 may compare time stamps stored in association withlocation information for mobile device 200 in reported location database540 with the current time. For a mobile device that does not reporttime-stamped location information, Internet television source 120 mayinhibit the content selection process if such mobile device has failedto respond to the last N location requests, where N is a predeterminednumber that is at least one. Alternatively, Internet television source120 may itself associate time stamps with reported location informationbased on time of receipt and inhibit the content selection process ifthe time of the last reported location as indicated by a time stamp issufficiently stale.

It also bears noting that Internet television source 120 may inhibitselection of incompatible program break content. For example, if programbreak content has an A/V component and a print component, Internettelevision source 120 may inhibit selection of the program break contentor may restrict selection to the A/V component if Internet televisionsource 120 determines that the print component is incompatible with amobile device, for example, determines that a mobile device does nothave a printer. To make this determination, Internet television source120 may request a mobile device, or a mobile device may reportindependent of any request, information (e.g. device make and model)from which Internet television source 120 can determine compatibility ofthe mobile device with program break content.

If one or more instances of location-matching program break content isfound, Internet television source 120 under control of processor 430next determines whether the durations of the location-matching programbreak content instances match the duration of the program break (630).In this regard, Internet television source 120 determines if theduration of the program break as indicated by the marker in the Internettelevision stream or determined from a program script matches theduration of the one or more instances of location-matching program breakcontent. If the duration of a given instance of location-matchingprogram break content exceeds the duration of the program break, theprogram break content is not suitable for insertion during the programbreak and is not selected. This is because such program break contentwould be cut-off prior to completion if outputted during the programbreak. Moreover, if the duration of a given instance oflocation-matching program break content is substantially less than theduration of the program break, the program break content is not suitablefor insertion during the program break and is not selected. This isbecause outputting of such program break content would finish wellbefore completion of the program break, resulting in a substantial deadperiod in the Internet television stream. However, if the duration of agiven instance of location-matching program break content is identicalor only slightly shorter than the duration of the program break, theprogram break content is suitable for insertion during the program breakand may be selected. Moreover, if the duration of multiple instances oflocation-matching program break content when combined is identical ornot substantially less than the duration of the program break, thesequence is suitable for insertion during the program break and may beselected as a sequence. If no instance of duration-matching programbreak content is found, the content selection process is aborted (620).

If one or more instances of duration-matching program break content isfound, Internet television source 120 under control of processor 430inserts a selected instance of the duration-matching program breakcontent into the Internet television stream during the program break(635), and the program break content is delivered to mobile device 200during the program break.

Naturally, if there are multiple program breaks, Steps 615-635 may berepeated for each program break.

In other embodiments, a start marker detected at the start of a programbreak prompts selection and insertion of program break content and anend marker detected at the end of the program break signals resumptionof the program content. In these embodiments, the program break durationmay not be known when program break content is selected and programbreak content that does not match the program break duration may thus beselected. In still other embodiments, program break content that doesnot match the program break duration may be selected even though theprogram break duration is known when the program break content isselected. Internet television source 120 may make timing adjustments tothe Internet television stream transmitted by Internet television source120 (e.g. delay resumption of transmission of the regular programcontent) to achieve seamless streaming in these embodiments.

FIG. 7 shows method steps performed on mobile device 200, under controlof processor 230, to facilitate location-based selection of content foroutputting on mobile device 200 during a program break in an Internettelevision stream in some embodiments of the invention. Mobile device200 receives from Internet television source 120 an Internet televisionstream and a location request (705). In other embodiments, no locationrequest is transmitted. Mobile device 200 transmits to Internettelevision source 120 a location report (710). Mobile device 200 thenreceives during a program break in the Internet television streamprogram break content, if any, that matches the location reported bymobile device 200 and the program break duration (715) and outputs thelocation- and duration-matching content (720).

FIG. 8 shows method steps performed by Internet television source 120 tofacilitate trajectory-based selection of content for outputting onmobile device 200 during a program break in an Internet televisionstream in other embodiments of the invention. These embodiments takeinto account the directional bearing and velocity of mobile device 200in selecting program break content. This enables program break contentto be selected that addresses topics relating to where a mobile deviceuser is likely headed, which may be of greater value to the sponsor ofthe information and the viewer alike. For example, trajectoryinformation for mobile device 200 can be advantageously applied toselect for outputting on mobile device 200 an advertisement for aroadside location that a user traveling on a roadway is approaching buthas not yet reached or passed, affording the user ample time toconsider, decide and act on the advertisement.

In the method, Internet television source 120 transmits to mobile device200 an Internet television stream and location request (805) andreceives a location report from mobile device 200 (810). In otherembodiments, no location request is transmitted. If a threshold number Nof location reports, where N is greater than one, has not been receivedfrom mobile device 200, the content selection process returns to Step805. However, if N location reports have been received from mobiledevice 200, the content selection process proceeds to Step 815.

Once N location reports have been received, Internet television source120 under control of processor 430 determines a trajectory of mobiledevice 200 using the multiple reported locations (815). In this regard,Internet television source 120 may determine a directional bearing and avelocity of mobile device 200 using GPS coordinates and associated timestamps from multiple location reports and predict future locations ofmobile device 200 over time based on the bearing and velocity. Internettelevision source 120 may also consult a GPS map database stored inmemory 440 or elsewhere to identify a road upon which mobile device 200is traveling and predict future locations of mobile device 200 over timebased on the roadway, bearing and velocity. In any event, Internettelevision source 120 determines a trajectory of mobile device 200 fromwhich future locations of mobile device 200 at future times can bepredicted. Naturally, the trajectory is updated as additional locationreports are received from mobile device 200.

Next, Internet television source 120 under control of processor 430detects a marker in the Internet television stream that indicates aprogram break start and duration (820). If no marker is found, thecontent selection process is aborted (825).

If a program break is found, Internet television source 120 undercontrol of processor 430 next identifies any content in program breakcontent database 550 that matches the trajectory of mobile device 200(830). In this regard, Internet television source 120 may compare for amatch the trajectory of mobile device 200 with locations or locationranges associated with various instances of program break content storedin database 550. In some embodiments, content insertion manager 530determines an estimated time of arrival of mobile device 200 at alocation associated with an instance of program break content stored ondatabase 550 using the present trajectory of mobile device 200 anddeclares a match if the estimated time of arrival is within a particulartime window. For example, content insertion manager 530 may implement arule whereby a trajectory match is declared for program break content ifan estimated time of arrival of mobile device 200 at a locationassociated with the program break content is between one and tenminutes. If no instance of trajectory-matching program break content isfound, the content selection process is aborted (825).

If one or more instances of trajectory-matching program break content isfound, Internet television source 120 under control of processor 430next determines whether the durations of the trajectory-matching programbreak content instances match the duration of the program break (835).If no instance of duration-matching program break content is found, thecontent selection process is aborted (830).

If one or more instances of duration-matching program break content isfound, Internet television source 120 under control of processor 430inserts a selected instance of the duration-matching program breakcontent into the Internet television stream during the program break(840), and the program break content is delivered to mobile device 200during the program break.

It will be appreciated by those of ordinary skill in the art that theinvention can be embodied in other specific forms without departing fromthe spirit or essential character hereof. For example, while in thedescribed methods the content-location match step (FIG. 6) andcontent-trajectory match step (FIG. 8) are performed before thecontent-duration match step, these steps may be performed in reverseorder or contemporaneously. Moreover, in some embodiments, the mobiledevice selects program break content using location informationgenerated on the mobile device. In these embodiments, the mobile devicedoes not transmit location information to the Internet televisionsource. Instead, the Internet television source identifies program breakcontent candidates whose durations are suitable for upcoming programbreaks and downloads the program break content candidates to the mobiledevice. The mobile device receives from the Internet television sourcethe plurality of program break content candidates and their associatedlocation ranges and selects content from among the content candidatesbased at least in part on a match between location information resolvedby the mobile device, or a trajectory determined by the mobile devicefrom multiple instances of location information resolved by the mobiledevice, and the location range of the content candidate. The mobiledevice then outputs the selected content during the program break.

Furthermore, in some embodiments, an Internet television sourcetransmits location-based cohabitation content adapted for sharing adisplay screen of the mobile device with program content during acohabitation window (i.e. not during a program break). For example, anInternet television source can transmit to a mobile device forcontemporaneous display with program content an advertisement (e.g.address, phone number, hours of operation, special offers, etc. for astore) or a traffic or weather alert selected based at least in part onthe location or trajectory of the mobile device. This cohabitationcontent may be arranged for display in a picture-in-picture, screencrawler or banner format so as to allow uninterrupted viewing of theprogram content while the cohabitation content is displayed. Theselection and transmission of cohabitation content may be triggered bydetection by the Internet television source of a marker in an Internettelevision stream indicating the start of a cohabitation window and theduration of the window, or a marker indicating the start of acohabitation window and a program script indicating the duration of thewindow, or a start and end marker indicating the start and end of acohabitation window, for example.

FIG. 9 shows method steps performed by an Internet television source,under control of a processor, to facilitate location-based selection ofcontent for outputting on a mobile device during a cohabitation windowin an Internet television stream in some embodiments of the invention.In the method, the Internet television source transmits to the mobiledevice an Internet television stream and a location request (905). Next,the Internet radio source receives a location report from the mobiledevice (910). Next, the Internet television source identifies acohabitation window in the Internet television stream (915). In thisregard, the Internet television source detects a marker in the Internettelevision stream that indicates a cohabitation window start andduration. If no marker is found, the content selection process isaborted (920). If a cohabitation window is found, the Internettelevision source next identifies any content in a cohabitation contentdatabase that matches the most recent reported location of the mobiledevice in a location database (925). If no instance of location-matchingcohabitation content is found, the content selection process is aborted(920). If one or more instances of location-matching program breakcontent is found, the Internet television source next determines whetherthe durations of the location-matching cohabitation content instancesmatch the duration of the cohabitation window (930). If no instance ofduration-matching cohabitation content is found, the content selectionprocess is aborted (920). If one or more instances of duration-matchingprogram break content is found, the Internet television source inserts aselected instance of the duration-matching cohabitation content into theInternet television stream during the cohabitation window (935), and thecohabitation content is delivered to the mobile device during thewindow. Naturally, if there are multiple cohabitation windows, Steps915-935 may be repeated for each window.

The present description is considered in all respects to be illustrativeand not restrictive. The scope of the invention is indicated by theappended claims, and all changes that come with in the meaning and rangeof equivalents thereof are intended to be embraced therein.

What is claimed is:
 1. A method for streaming localized content to amobile device during a program break in an Internet television stream,comprising the steps of: streaming from an Internet television source toa mobile device an Internet television program; receiving by theInternet television source from the mobile device a report including alocation of the mobile device; detecting electronically by the Internettelevision source a start marker in the Internet television programindicating a start of a program break; interrupting by the Internettelevision source streaming to the mobile device of the Internettelevision program in response to detecting the start marker; selectingby the Internet television source using the reported location of themobile device program break content; streaming from the Internettelevision source to the mobile device while streaming of the Internettelevision program is interrupted the program break content; andresuming by the Internet television source streaming to the mobiledevice of the Internet television program, wherein the mobile device isa wireless handset.
 2. A method for streaming localized content to amobile device during a program break in an Internet television stream,comprising the steps of: streaming from an Internet television source toa mobile device an Internet television program; receiving by theInternet television source from the mobile device a report including alocation of the mobile device; detecting electronically by the Internettelevision source a start marker in the Internet television programindicating a start of a program break; interrupting by the Internettelevision source streaming to the mobile device of the Internettelevision program in response to detecting the start marker; selectingby the Internet television source using the reported location of themobile device program break content; streaming from the Internettelevision source to the mobile device while streaming of the Internettelevision program is interrupted the program break content; andresuming by the Internet television source streaming to the mobiledevice of the Internet television program, wherein the reported locationof the mobile device includes global positioning system (GPS)coordinates.
 3. A method for streaming localized content to a mobiledevice during a program break in an Internet television stream,comprising the steps of: streaming from an Internet television source toa mobile device an Internet television program; receiving by theInternet television source from the mobile device a report including alocation of the mobile device; detecting electronically by the Internettelevision source a start marker in the Internet television programindicating a start of a program break; interrupting by the Internettelevision source streaming to the mobile device of the Internettelevision program in response to detecting the start marker; selectingby the Internet television source using the reported location of themobile device program break content; streaming from the Internettelevision source to the mobile device while streaming of the Internettelevision program is interrupted the program break content; andresuming by the Internet television source streaming to the mobiledevice of the Internet television program, wherein the Internettelevision source delays resumption of streaming of the Internettelevision program to the mobile device beyond a predetermined durationof the program break and makes timing adjustments to the Internettelevision program to achieve seamless streaming.
 4. An Internettelevision source, comprising: at least one communication interface; anda processor communicatively coupled with the communication interface,wherein the processor is configured to stream to a mobile device via theinterface an Internet television program, receive from the mobile devicevia the interface a report including a location of the mobile device,detect electronically a start marker in the Internet television programindicating a start of a program break, interrupt streaming to the mobiledevice of the Internet television program in response to detecting thestart marker, select using the reported location of the mobile deviceprogram break content, stream to the mobile device via the interfacewhile streaming of the Internet television program is interrupted theprogram break content, and resume streaming to the mobile device via theinterface the Internet television program, wherein the mobile device isa wireless handset.
 5. An Internet television source, comprising: atleast one communication interface; and a processor communicativelycoupled with the communication interface, wherein the processor isconfigured to stream to a mobile device via the interface an Internettelevision program, receive from the mobile device via the interface areport including a location of the mobile device, detect electronicallya start marker in the Internet television program indicating a start ofa program break, interrupt streaming to the mobile device of theInternet television program in response to detecting the start marker,select using the reported location of the mobile device program breakcontent, stream to the mobile device via the interface while streamingof the Internet television program is interrupted the program breakcontent, and resume streaming to the mobile device via the interface theInternet television program, wherein the reported location of the mobiledevice includes global positioning system (GPS) coordinates.
 6. AnInternet television source, comprising: at least one communicationinterface; and a processor communicatively coupled with thecommunication interface, wherein the processor is configured to streamto a mobile device via the interface an Internet television program,receive from the mobile device via the interface a report including alocation of the mobile device, detect electronically a start marker inthe Internet television program indicating a start of a program break,interrupt streaming to the mobile device of the Internet televisionprogram in response to detecting the start marker, select using thereported location of the mobile device program break content, stream tothe mobile device via the interface while streaming of the Internettelevision program is interrupted the program break content, and resumestreaming to the mobile device via the interface the Internet televisionprogram, wherein the Internet television source is configured to delayresumption of streaming of the Internet television program to the mobiledevice beyond a predetermined duration of the program break and maketiming adjustments to the Internet television program to achieveseamless streaming.